<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="discoveryengine_v1alpha.html">Discovery Engine API</a> . <a href="discoveryengine_v1alpha.projects.html">projects</a> . <a href="discoveryengine_v1alpha.projects.locations.html">locations</a> . <a href="discoveryengine_v1alpha.projects.locations.collections.html">collections</a> . <a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.html">dataStores</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.branches.html">branches()</a></code>
</p>
<p class="firstline">Returns the branches Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.completionConfig.html">completionConfig()</a></code>
</p>
<p class="firstline">Returns the completionConfig Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.completionSuggestions.html">completionSuggestions()</a></code>
</p>
<p class="firstline">Returns the completionSuggestions Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.controls.html">controls()</a></code>
</p>
<p class="firstline">Returns the controls Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.conversations.html">conversations()</a></code>
</p>
<p class="firstline">Returns the conversations Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.customModels.html">customModels()</a></code>
</p>
<p class="firstline">Returns the customModels Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.models.html">models()</a></code>
</p>
<p class="firstline">Returns the models Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.operations.html">operations()</a></code>
</p>
<p class="firstline">Returns the operations Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.schemas.html">schemas()</a></code>
</p>
<p class="firstline">Returns the schemas Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.servingConfigs.html">servingConfigs()</a></code>
</p>
<p class="firstline">Returns the servingConfigs Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.sessions.html">sessions()</a></code>
</p>
<p class="firstline">Returns the sessions Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.siteSearchEngine.html">siteSearchEngine()</a></code>
</p>
<p class="firstline">Returns the siteSearchEngine Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.suggestionDenyListEntries.html">suggestionDenyListEntries()</a></code>
</p>
<p class="firstline">Returns the suggestionDenyListEntries Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.userEvents.html">userEvents()</a></code>
</p>
<p class="firstline">Returns the userEvents Resource.</p>

<p class="toc_element">
  <code><a href="discoveryengine_v1alpha.projects.locations.collections.dataStores.widgetConfigs.html">widgetConfigs()</a></code>
</p>
<p class="firstline">Returns the widgetConfigs Resource.</p>

<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#completeQuery">completeQuery(dataStore, includeTailSuggestions=None, query=None, queryModel=None, userPseudoId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Completes the specified user input with keyword suggestions.</p>
<p class="toc_element">
  <code><a href="#create">create(parent, body=None, cmekConfigName=None, createAdvancedSiteSearch=None, dataStoreId=None, disableCmek=None, skipDefaultSchemaCreation=None, x__xgafv=None)</a></code></p>
<p class="firstline">Creates a DataStore. DataStore is for storing Documents. To serve these documents for Search, or Recommendation use case, an Engine needs to be created separately.</p>
<p class="toc_element">
  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes a DataStore.</p>
<p class="toc_element">
  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Gets a DataStore.</p>
<p class="toc_element">
  <code><a href="#getDocumentProcessingConfig">getDocumentProcessingConfig(name, x__xgafv=None)</a></code></p>
<p class="firstline">Gets a DocumentProcessingConfig.</p>
<p class="toc_element">
  <code><a href="#getSiteSearchEngine">getSiteSearchEngine(name, x__xgafv=None)</a></code></p>
<p class="firstline">Gets the SiteSearchEngine.</p>
<p class="toc_element">
  <code><a href="#list">list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists all the DataStores associated with the project.</p>
<p class="toc_element">
  <code><a href="#list_next">list_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates a DataStore</p>
<p class="toc_element">
  <code><a href="#trainCustomModel">trainCustomModel(dataStore, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Trains a custom model.</p>
<p class="toc_element">
  <code><a href="#updateDocumentProcessingConfig">updateDocumentProcessingConfig(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates the DocumentProcessingConfig. DocumentProcessingConfig is a singleon resource of DataStore. It's empty when DataStore is created. The first call to this method will set up DocumentProcessingConfig.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="completeQuery">completeQuery(dataStore, includeTailSuggestions=None, query=None, queryModel=None, userPseudoId=None, x__xgafv=None)</code>
  <pre>Completes the specified user input with keyword suggestions.

Args:
  dataStore: string, Required. The parent data store resource name for which the completion is performed, such as `projects/*/locations/global/collections/default_collection/dataStores/default_data_store`. (required)
  includeTailSuggestions: boolean, Indicates if tail suggestions should be returned if there are no suggestions that match the full query. Even if set to true, if there are suggestions that match the full query, those are returned and no tail suggestions are returned.
  query: string, Required. The typeahead input used to fetch suggestions. Maximum length is 128 characters.
  queryModel: string, Specifies the autocomplete data model. This overrides any model specified in the Configuration &gt; Autocomplete section of the Cloud console. Currently supported values: * `document` - Using suggestions generated from user-imported documents. * `search-history` - Using suggestions generated from the past history of SearchService.Search API calls. Do not use it when there is no traffic for Search API. * `user-event` - Using suggestions generated from user-imported search events. * `document-completable` - Using suggestions taken directly from user-imported document fields marked as completable. Default values: * `document` is the default model for regular dataStores. * `search-history` is the default model for site search dataStores.
  userPseudoId: string, Optional. A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor logs in or out of the website. This field should NOT have a fixed value such as `unknown_visitor`. This should be the same identifier as UserEvent.user_pseudo_id and SearchRequest.user_pseudo_id. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for CompletionService.CompleteQuery method.
  &quot;querySuggestions&quot;: [ # Results of the matched query suggestions. The result list is ordered and the first result is a top suggestion.
    { # Suggestions as search queries.
      &quot;completableFieldPaths&quot;: [ # The unique document field paths that serve as the source of this suggestion if it was generated from completable fields. This field is only populated for the document-completable model.
        &quot;A String&quot;,
      ],
      &quot;suggestion&quot;: &quot;A String&quot;, # The suggestion for the query.
    },
  ],
  &quot;tailMatchTriggered&quot;: True or False, # True if the returned suggestions are all tail suggestions. For tail matching to be triggered, include_tail_suggestions in the request must be true and there must be no suggestions that match the full query.
}</pre>
</div>

<div class="method">
    <code class="details" id="create">create(parent, body=None, cmekConfigName=None, createAdvancedSiteSearch=None, dataStoreId=None, disableCmek=None, skipDefaultSchemaCreation=None, x__xgafv=None)</code>
  <pre>Creates a DataStore. DataStore is for storing Documents. To serve these documents for Search, or Recommendation use case, an Engine needs to be created separately.

Args:
  parent: string, Required. The parent resource name, such as `projects/{project}/locations/{location}/collections/{collection}`. (required)
  body: object, The request body.
    The object takes the form of:

{ # DataStore captures global settings and configs at the DataStore level.
  &quot;aclEnabled&quot;: True or False, # Immutable. Whether data in the DataStore has ACL information. If set to `true`, the source data must have ACL. ACL will be ingested when data is ingested by DocumentService.ImportDocuments methods. When ACL is enabled for the DataStore, Document can&#x27;t be accessed by calling DocumentService.GetDocument or DocumentService.ListDocuments. Currently ACL is only supported in `GENERIC` industry vertical with non-`PUBLIC_WEBSITE` content config.
  &quot;advancedSiteSearchConfig&quot;: { # Configuration data for advance site search. # Optional. Configuration for advanced site search.
    &quot;disableAutomaticRefresh&quot;: True or False, # If set true, automatic refresh is disabled for the DataStore.
    &quot;disableInitialIndex&quot;: True or False, # If set true, initial indexing is disabled for the DataStore.
  },
  &quot;billingEstimation&quot;: { # Estimation of data size per data store. # Output only. Data size estimation for billing.
    &quot;structuredDataSize&quot;: &quot;A String&quot;, # Data size for structured data in terms of bytes.
    &quot;structuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for structured data.
    &quot;unstructuredDataSize&quot;: &quot;A String&quot;, # Data size for unstructured data in terms of bytes.
    &quot;unstructuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for unstructured data.
    &quot;websiteDataSize&quot;: &quot;A String&quot;, # Data size for websites in terms of bytes.
    &quot;websiteDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for websites.
  },
  &quot;cmekConfig&quot;: { # Configurations used to enable CMEK data encryption with Cloud KMS keys. # Output only. CMEK-related information for the DataStore.
    &quot;isDefault&quot;: True or False, # Output only. The default CmekConfig for the Customer.
    &quot;kmsKey&quot;: &quot;A String&quot;, # Required. KMS key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
    &quot;kmsKeyVersion&quot;: &quot;A String&quot;, # Output only. KMS key version resource name which will be used to encrypt resources `/cryptoKeyVersions/{keyVersion}`.
    &quot;lastRotationTimestampMicros&quot;: &quot;A String&quot;, # Output only. The timestamp of the last key rotation.
    &quot;name&quot;: &quot;A String&quot;, # Required. The name of the CmekConfig of the form `projects/{project}/locations/{location}/cmekConfig` or `projects/{project}/locations/{location}/cmekConfigs/{cmek_config}`.
    &quot;notebooklmState&quot;: &quot;A String&quot;, # Output only. Whether the NotebookLM Corpus is ready to be used.
    &quot;singleRegionKeys&quot;: [ # Optional. Single-regional CMEKs that are required for some VAIS features.
      { # Metadata for single-regional CMEKs.
        &quot;kmsKey&quot;: &quot;A String&quot;, # Required. Single-regional kms key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
      },
    ],
    &quot;state&quot;: &quot;A String&quot;, # Output only. The states of the CmekConfig.
  },
  &quot;configurableBillingApproach&quot;: &quot;A String&quot;, # Optional. Configuration for configurable billing approach. See
  &quot;configurableBillingApproachUpdateTime&quot;: &quot;A String&quot;, # Output only. The timestamp when configurable_billing_approach was last updated.
  &quot;contentConfig&quot;: &quot;A String&quot;, # Immutable. The content config of the data store. If this field is unset, the server behavior defaults to ContentConfig.NO_CONTENT.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp the DataStore was created at.
  &quot;defaultSchemaId&quot;: &quot;A String&quot;, # Output only. The id of the default Schema associated to this data store.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The data store display name. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
  &quot;documentProcessingConfig&quot;: { # A singleton resource of DataStore. If it&#x27;s empty when DataStore is created and DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED, the default parser will default to digital parser. # Configuration for Document understanding and enrichment.
    &quot;chunkingConfig&quot;: { # Configuration for chunking config. # Whether chunking mode is enabled.
      &quot;layoutBasedChunkingConfig&quot;: { # Configuration for the layout based chunking. # Configuration for the layout based chunking.
        &quot;chunkSize&quot;: 42, # The token size limit for each chunk. Supported values: 100-500 (inclusive). Default value: 500.
        &quot;includeAncestorHeadings&quot;: True or False, # Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss. Default value: False.
      },
    },
    &quot;defaultParsingConfig&quot;: { # Related configurations applied to a specific type of document parser. # Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.
      &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
      },
      &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
        &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
        &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
        &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
        &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
          &quot;A String&quot;,
        ],
      },
      &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
        &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
          &quot;A String&quot;,
        ],
        &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
      },
    },
    &quot;name&quot;: &quot;A String&quot;, # The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`.
    &quot;parsingConfigOverrides&quot;: { # Map from file type to override the default parsing configuration based on the file type. Supported keys: * `pdf`: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported. * `html`: Override parsing config for HTML files, only digital parsing and layout parsing are supported. * `docx`: Override parsing config for DOCX files, only digital parsing and layout parsing are supported. * `pptx`: Override parsing config for PPTX files, only digital parsing and layout parsing are supported. * `xlsm`: Override parsing config for XLSM files, only digital parsing and layout parsing are supported. * `xlsx`: Override parsing config for XLSX files, only digital parsing and layout parsing are supported.
      &quot;a_key&quot;: { # Related configurations applied to a specific type of document parser.
        &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
        },
        &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
          &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
          &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
          &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
          &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
            &quot;A String&quot;,
          ],
        },
        &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
          &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
            &quot;A String&quot;,
          ],
          &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
        },
      },
    },
  },
  &quot;healthcareFhirConfig&quot;: { # Config to data store for `HEALTHCARE_FHIR` vertical. # Optional. Configuration for `HEALTHCARE_FHIR` vertical.
    &quot;enableConfigurableSchema&quot;: True or False, # Whether to enable configurable schema for `HEALTHCARE_FHIR` vertical. If set to `true`, the predefined healthcare fhir schema can be extended for more customized searching and filtering.
    &quot;enableStaticIndexingForBatchIngestion&quot;: True or False, # Whether to enable static indexing for `HEALTHCARE_FHIR` batch ingestion. If set to `true`, the batch ingestion will be processed in a static indexing mode which is slower but more capable of handling larger volume.
  },
  &quot;identityMappingStore&quot;: &quot;A String&quot;, # Immutable. The fully qualified resource name of the associated IdentityMappingStore. This field can only be set for acl_enabled DataStores with `THIRD_PARTY` or `GSUITE` IdP. Format: `projects/{project}/locations/{location}/identityMappingStores/{identity_mapping_store}`.
  &quot;idpConfig&quot;: { # Identity Provider Config. # Output only. Data store level identity provider config.
    &quot;externalIdpConfig&quot;: { # Third party IDP Config. # External Identity provider config.
      &quot;workforcePoolName&quot;: &quot;A String&quot;, # Workforce pool name. Example: &quot;locations/global/workforcePools/pool_id&quot;
    },
    &quot;idpType&quot;: &quot;A String&quot;, # Identity provider type configured.
  },
  &quot;industryVertical&quot;: &quot;A String&quot;, # Immutable. The industry vertical that the data store registers.
  &quot;isInfobotFaqDataStore&quot;: True or False, # Optional. If set, this DataStore is an Infobot FAQ DataStore.
  &quot;kmsKeyName&quot;: &quot;A String&quot;, # Input only. The KMS key to be used to protect this DataStore at creation time. Must be set for requests that need to comply with CMEK Org Policy protections. If this field is set and processed successfully, the DataStore will be protected by the KMS key, as indicated in the cmek_config field.
  &quot;languageInfo&quot;: { # Language info for DataStore. # Language info for DataStore.
    &quot;language&quot;: &quot;A String&quot;, # Output only. Language part of normalized_language_code. E.g.: `en-US` -&gt; `en`, `zh-Hans-HK` -&gt; `zh`, `en` -&gt; `en`.
    &quot;languageCode&quot;: &quot;A String&quot;, # The language code for the DataStore.
    &quot;normalizedLanguageCode&quot;: &quot;A String&quot;, # Output only. This is the normalized form of language_code. E.g.: language_code of `en-GB`, `en_GB`, `en-UK` or `en-gb` will have normalized_language_code of `en-GB`.
    &quot;region&quot;: &quot;A String&quot;, # Output only. Region part of normalized_language_code, if present. E.g.: `en-US` -&gt; `US`, `zh-Hans-HK` -&gt; `HK`, `en` -&gt; ``.
  },
  &quot;name&quot;: &quot;A String&quot;, # Immutable. Identifier. The full resource name of the data store. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
  &quot;naturalLanguageQueryUnderstandingConfig&quot;: { # Configuration for Natural Language Query Understanding. # Optional. Configuration for Natural Language Query Understanding.
    &quot;mode&quot;: &quot;A String&quot;, # Mode of Natural Language Query Understanding. If this field is unset, the behavior defaults to NaturalLanguageQueryUnderstandingConfig.Mode.DISABLED.
  },
  &quot;servingConfigDataStore&quot;: { # Stores information regarding the serving configurations at DataStore level. # Optional. Stores serving config at DataStore level.
    &quot;disabledForServing&quot;: True or False, # Optional. If set true, the DataStore will not be available for serving search requests.
  },
  &quot;solutionTypes&quot;: [ # The solutions that the data store enrolls. Available solutions for each industry_vertical: * `MEDIA`: `SOLUTION_TYPE_RECOMMENDATION` and `SOLUTION_TYPE_SEARCH`. * `SITE_SEARCH`: `SOLUTION_TYPE_SEARCH` is automatically enrolled. Other solutions cannot be enrolled.
    &quot;A String&quot;,
  ],
  &quot;startingSchema&quot;: { # Defines the structure and layout of a type of document data. # The start schema to use for this DataStore when provisioning it. If unset, a default vertical specialized schema will be used. This field is only used by CreateDataStore API, and will be ignored if used in other APIs. This field will be omitted from all API responses including CreateDataStore API. To retrieve a schema of a DataStore, use SchemaService.GetSchema API instead. The provided schema will be validated against certain rules on schema. Learn more from [this doc](https://cloud.google.com/generative-ai-app-builder/docs/provide-schema).
    &quot;fieldConfigs&quot;: [ # Output only. Configurations for fields of the schema.
      { # Configurations for fields of a schema. For example, configuring a field is indexable, or searchable.
        &quot;advancedSiteSearchDataSources&quot;: [ # If this field is set, only the corresponding source will be indexed for this field. Otherwise, the values from different sources are merged. Assuming a page with `` in meta tag, and `` in page map: if this enum is set to METATAGS, we will only index ``; if this enum is not set, we will merge them and index ``.
          &quot;A String&quot;,
        ],
        &quot;completableOption&quot;: &quot;A String&quot;, # If completable_option is COMPLETABLE_ENABLED, field values are directly used and returned as suggestions for Autocomplete in CompletionService.CompleteQuery. If completable_option is unset, the server behavior defaults to COMPLETABLE_DISABLED for fields that support setting completable options, which are just `string` fields. For those fields that do not support setting completable options, the server will skip completable option setting, and setting completable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;dynamicFacetableOption&quot;: &quot;A String&quot;, # If dynamic_facetable_option is DYNAMIC_FACETABLE_ENABLED, field values are available for dynamic facet. Could only be DYNAMIC_FACETABLE_DISABLED if FieldConfig.indexable_option is INDEXABLE_DISABLED. Otherwise, an `INVALID_ARGUMENT` error will be returned. If dynamic_facetable_option is unset, the server behavior defaults to DYNAMIC_FACETABLE_DISABLED for fields that support setting dynamic facetable options. For those fields that do not support setting dynamic facetable options, such as `object` and `boolean`, the server will skip dynamic facetable option setting, and setting dynamic_facetable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;fieldPath&quot;: &quot;A String&quot;, # Required. Field path of the schema field. For example: `title`, `description`, `release_info.release_year`.
        &quot;fieldType&quot;: &quot;A String&quot;, # Output only. Raw type of the field.
        &quot;indexableOption&quot;: &quot;A String&quot;, # If indexable_option is INDEXABLE_ENABLED, field values are indexed so that it can be filtered or faceted in SearchService.Search. If indexable_option is unset, the server behavior defaults to INDEXABLE_DISABLED for fields that support setting indexable options. For those fields that do not support setting indexable options, such as `object` and `boolean` and key properties, the server will skip indexable_option setting, and setting indexable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;keyPropertyType&quot;: &quot;A String&quot;, # Output only. Type of the key property that this field is mapped to. Empty string if this is not annotated as mapped to a key property. Example types are `title`, `description`. Full list is defined by `keyPropertyMapping` in the schema field annotation. If the schema field has a `KeyPropertyMapping` annotation, `indexable_option` and `searchable_option` of this field cannot be modified.
        &quot;metatagName&quot;: &quot;A String&quot;, # Optional. The metatag name found in the HTML page. If user defines this field, the value of this metatag name will be used to extract metatag. If the user does not define this field, the FieldConfig.field_path will be used to extract metatag.
        &quot;recsFilterableOption&quot;: &quot;A String&quot;, # If recs_filterable_option is FILTERABLE_ENABLED, field values are filterable by filter expression in RecommendationService.Recommend. If FILTERABLE_ENABLED but the field type is numerical, field values are not filterable by text queries in RecommendationService.Recommend. Only textual fields are supported. If recs_filterable_option is unset, the default setting is FILTERABLE_DISABLED for fields that support setting filterable options. When a field set to [FILTERABLE_DISABLED] is filtered, a warning is generated and an empty result is returned.
        &quot;retrievableOption&quot;: &quot;A String&quot;, # If retrievable_option is RETRIEVABLE_ENABLED, field values are included in the search results. If retrievable_option is unset, the server behavior defaults to RETRIEVABLE_DISABLED for fields that support setting retrievable options. For those fields that do not support setting retrievable options, such as `object` and `boolean`, the server will skip retrievable option setting, and setting retrievable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;schemaOrgPaths&quot;: [ # Field paths for indexing custom attribute from schema.org data. More details of schema.org and its defined types can be found at [schema.org](https://schema.org). It is only used on advanced site search schema. Currently only support full path from root. The full path to a field is constructed by concatenating field names, starting from `_root`, with a period `.` as the delimiter. Examples: * Publish date of the root: _root.datePublished * Publish date of the reviews: _root.review.datePublished
          &quot;A String&quot;,
        ],
        &quot;searchableOption&quot;: &quot;A String&quot;, # If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error.
      },
    ],
    &quot;jsonSchema&quot;: &quot;A String&quot;, # The JSON representation of the schema.
    &quot;name&quot;: &quot;A String&quot;, # Immutable. The full resource name of the schema, in the format of `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/schemas/{schema}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
    &quot;structSchema&quot;: { # The structured representation of the schema.
      &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
    },
  },
  &quot;workspaceConfig&quot;: { # Config to store data store type configuration for workspace data # Config to store data store type configuration for workspace data. This must be set when DataStore.content_config is set as DataStore.ContentConfig.GOOGLE_WORKSPACE.
    &quot;dasherCustomerId&quot;: &quot;A String&quot;, # Obfuscated Dasher customer ID.
    &quot;superAdminEmailAddress&quot;: &quot;A String&quot;, # Optional. The super admin email address for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
    &quot;superAdminServiceAccount&quot;: &quot;A String&quot;, # Optional. The super admin service account for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
    &quot;type&quot;: &quot;A String&quot;, # The Google Workspace data source.
  },
}

  cmekConfigName: string, Resource name of the CmekConfig to use for protecting this DataStore.
  createAdvancedSiteSearch: boolean, A boolean flag indicating whether user want to directly create an advanced data store for site search. If the data store is not configured as site search (GENERIC vertical and PUBLIC_WEBSITE content_config), this flag will be ignored.
  dataStoreId: string, Required. The ID to use for the DataStore, which will become the final component of the DataStore&#x27;s resource name. This field must conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) standard with a length limit of 63 characters. Otherwise, an INVALID_ARGUMENT error is returned.
  disableCmek: boolean, DataStore without CMEK protections. If a default CmekConfig is set for the project, setting this field will override the default CmekConfig as well.
  skipDefaultSchemaCreation: boolean, A boolean flag indicating whether to skip the default schema creation for the data store. Only enable this flag if you are certain that the default schema is incompatible with your use case. If set to true, you must manually create a schema for the data store before any documents can be ingested. This flag cannot be specified if `data_store.starting_schema` is specified.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
  <pre>Deletes a DataStore.

Args:
  name: string, Required. Full resource name of DataStore, such as `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. If the caller does not have permission to delete the DataStore, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the DataStore to delete does not exist, a NOT_FOUND error is returned. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, x__xgafv=None)</code>
  <pre>Gets a DataStore.

Args:
  name: string, Required. Full resource name of DataStore, such as `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. If the caller does not have permission to access the DataStore, regardless of whether or not it exists, a PERMISSION_DENIED error is returned. If the requested DataStore does not exist, a NOT_FOUND error is returned. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # DataStore captures global settings and configs at the DataStore level.
  &quot;aclEnabled&quot;: True or False, # Immutable. Whether data in the DataStore has ACL information. If set to `true`, the source data must have ACL. ACL will be ingested when data is ingested by DocumentService.ImportDocuments methods. When ACL is enabled for the DataStore, Document can&#x27;t be accessed by calling DocumentService.GetDocument or DocumentService.ListDocuments. Currently ACL is only supported in `GENERIC` industry vertical with non-`PUBLIC_WEBSITE` content config.
  &quot;advancedSiteSearchConfig&quot;: { # Configuration data for advance site search. # Optional. Configuration for advanced site search.
    &quot;disableAutomaticRefresh&quot;: True or False, # If set true, automatic refresh is disabled for the DataStore.
    &quot;disableInitialIndex&quot;: True or False, # If set true, initial indexing is disabled for the DataStore.
  },
  &quot;billingEstimation&quot;: { # Estimation of data size per data store. # Output only. Data size estimation for billing.
    &quot;structuredDataSize&quot;: &quot;A String&quot;, # Data size for structured data in terms of bytes.
    &quot;structuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for structured data.
    &quot;unstructuredDataSize&quot;: &quot;A String&quot;, # Data size for unstructured data in terms of bytes.
    &quot;unstructuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for unstructured data.
    &quot;websiteDataSize&quot;: &quot;A String&quot;, # Data size for websites in terms of bytes.
    &quot;websiteDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for websites.
  },
  &quot;cmekConfig&quot;: { # Configurations used to enable CMEK data encryption with Cloud KMS keys. # Output only. CMEK-related information for the DataStore.
    &quot;isDefault&quot;: True or False, # Output only. The default CmekConfig for the Customer.
    &quot;kmsKey&quot;: &quot;A String&quot;, # Required. KMS key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
    &quot;kmsKeyVersion&quot;: &quot;A String&quot;, # Output only. KMS key version resource name which will be used to encrypt resources `/cryptoKeyVersions/{keyVersion}`.
    &quot;lastRotationTimestampMicros&quot;: &quot;A String&quot;, # Output only. The timestamp of the last key rotation.
    &quot;name&quot;: &quot;A String&quot;, # Required. The name of the CmekConfig of the form `projects/{project}/locations/{location}/cmekConfig` or `projects/{project}/locations/{location}/cmekConfigs/{cmek_config}`.
    &quot;notebooklmState&quot;: &quot;A String&quot;, # Output only. Whether the NotebookLM Corpus is ready to be used.
    &quot;singleRegionKeys&quot;: [ # Optional. Single-regional CMEKs that are required for some VAIS features.
      { # Metadata for single-regional CMEKs.
        &quot;kmsKey&quot;: &quot;A String&quot;, # Required. Single-regional kms key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
      },
    ],
    &quot;state&quot;: &quot;A String&quot;, # Output only. The states of the CmekConfig.
  },
  &quot;configurableBillingApproach&quot;: &quot;A String&quot;, # Optional. Configuration for configurable billing approach. See
  &quot;configurableBillingApproachUpdateTime&quot;: &quot;A String&quot;, # Output only. The timestamp when configurable_billing_approach was last updated.
  &quot;contentConfig&quot;: &quot;A String&quot;, # Immutable. The content config of the data store. If this field is unset, the server behavior defaults to ContentConfig.NO_CONTENT.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp the DataStore was created at.
  &quot;defaultSchemaId&quot;: &quot;A String&quot;, # Output only. The id of the default Schema associated to this data store.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The data store display name. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
  &quot;documentProcessingConfig&quot;: { # A singleton resource of DataStore. If it&#x27;s empty when DataStore is created and DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED, the default parser will default to digital parser. # Configuration for Document understanding and enrichment.
    &quot;chunkingConfig&quot;: { # Configuration for chunking config. # Whether chunking mode is enabled.
      &quot;layoutBasedChunkingConfig&quot;: { # Configuration for the layout based chunking. # Configuration for the layout based chunking.
        &quot;chunkSize&quot;: 42, # The token size limit for each chunk. Supported values: 100-500 (inclusive). Default value: 500.
        &quot;includeAncestorHeadings&quot;: True or False, # Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss. Default value: False.
      },
    },
    &quot;defaultParsingConfig&quot;: { # Related configurations applied to a specific type of document parser. # Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.
      &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
      },
      &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
        &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
        &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
        &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
        &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
          &quot;A String&quot;,
        ],
      },
      &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
        &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
          &quot;A String&quot;,
        ],
        &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
      },
    },
    &quot;name&quot;: &quot;A String&quot;, # The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`.
    &quot;parsingConfigOverrides&quot;: { # Map from file type to override the default parsing configuration based on the file type. Supported keys: * `pdf`: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported. * `html`: Override parsing config for HTML files, only digital parsing and layout parsing are supported. * `docx`: Override parsing config for DOCX files, only digital parsing and layout parsing are supported. * `pptx`: Override parsing config for PPTX files, only digital parsing and layout parsing are supported. * `xlsm`: Override parsing config for XLSM files, only digital parsing and layout parsing are supported. * `xlsx`: Override parsing config for XLSX files, only digital parsing and layout parsing are supported.
      &quot;a_key&quot;: { # Related configurations applied to a specific type of document parser.
        &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
        },
        &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
          &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
          &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
          &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
          &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
            &quot;A String&quot;,
          ],
        },
        &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
          &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
            &quot;A String&quot;,
          ],
          &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
        },
      },
    },
  },
  &quot;healthcareFhirConfig&quot;: { # Config to data store for `HEALTHCARE_FHIR` vertical. # Optional. Configuration for `HEALTHCARE_FHIR` vertical.
    &quot;enableConfigurableSchema&quot;: True or False, # Whether to enable configurable schema for `HEALTHCARE_FHIR` vertical. If set to `true`, the predefined healthcare fhir schema can be extended for more customized searching and filtering.
    &quot;enableStaticIndexingForBatchIngestion&quot;: True or False, # Whether to enable static indexing for `HEALTHCARE_FHIR` batch ingestion. If set to `true`, the batch ingestion will be processed in a static indexing mode which is slower but more capable of handling larger volume.
  },
  &quot;identityMappingStore&quot;: &quot;A String&quot;, # Immutable. The fully qualified resource name of the associated IdentityMappingStore. This field can only be set for acl_enabled DataStores with `THIRD_PARTY` or `GSUITE` IdP. Format: `projects/{project}/locations/{location}/identityMappingStores/{identity_mapping_store}`.
  &quot;idpConfig&quot;: { # Identity Provider Config. # Output only. Data store level identity provider config.
    &quot;externalIdpConfig&quot;: { # Third party IDP Config. # External Identity provider config.
      &quot;workforcePoolName&quot;: &quot;A String&quot;, # Workforce pool name. Example: &quot;locations/global/workforcePools/pool_id&quot;
    },
    &quot;idpType&quot;: &quot;A String&quot;, # Identity provider type configured.
  },
  &quot;industryVertical&quot;: &quot;A String&quot;, # Immutable. The industry vertical that the data store registers.
  &quot;isInfobotFaqDataStore&quot;: True or False, # Optional. If set, this DataStore is an Infobot FAQ DataStore.
  &quot;kmsKeyName&quot;: &quot;A String&quot;, # Input only. The KMS key to be used to protect this DataStore at creation time. Must be set for requests that need to comply with CMEK Org Policy protections. If this field is set and processed successfully, the DataStore will be protected by the KMS key, as indicated in the cmek_config field.
  &quot;languageInfo&quot;: { # Language info for DataStore. # Language info for DataStore.
    &quot;language&quot;: &quot;A String&quot;, # Output only. Language part of normalized_language_code. E.g.: `en-US` -&gt; `en`, `zh-Hans-HK` -&gt; `zh`, `en` -&gt; `en`.
    &quot;languageCode&quot;: &quot;A String&quot;, # The language code for the DataStore.
    &quot;normalizedLanguageCode&quot;: &quot;A String&quot;, # Output only. This is the normalized form of language_code. E.g.: language_code of `en-GB`, `en_GB`, `en-UK` or `en-gb` will have normalized_language_code of `en-GB`.
    &quot;region&quot;: &quot;A String&quot;, # Output only. Region part of normalized_language_code, if present. E.g.: `en-US` -&gt; `US`, `zh-Hans-HK` -&gt; `HK`, `en` -&gt; ``.
  },
  &quot;name&quot;: &quot;A String&quot;, # Immutable. Identifier. The full resource name of the data store. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
  &quot;naturalLanguageQueryUnderstandingConfig&quot;: { # Configuration for Natural Language Query Understanding. # Optional. Configuration for Natural Language Query Understanding.
    &quot;mode&quot;: &quot;A String&quot;, # Mode of Natural Language Query Understanding. If this field is unset, the behavior defaults to NaturalLanguageQueryUnderstandingConfig.Mode.DISABLED.
  },
  &quot;servingConfigDataStore&quot;: { # Stores information regarding the serving configurations at DataStore level. # Optional. Stores serving config at DataStore level.
    &quot;disabledForServing&quot;: True or False, # Optional. If set true, the DataStore will not be available for serving search requests.
  },
  &quot;solutionTypes&quot;: [ # The solutions that the data store enrolls. Available solutions for each industry_vertical: * `MEDIA`: `SOLUTION_TYPE_RECOMMENDATION` and `SOLUTION_TYPE_SEARCH`. * `SITE_SEARCH`: `SOLUTION_TYPE_SEARCH` is automatically enrolled. Other solutions cannot be enrolled.
    &quot;A String&quot;,
  ],
  &quot;startingSchema&quot;: { # Defines the structure and layout of a type of document data. # The start schema to use for this DataStore when provisioning it. If unset, a default vertical specialized schema will be used. This field is only used by CreateDataStore API, and will be ignored if used in other APIs. This field will be omitted from all API responses including CreateDataStore API. To retrieve a schema of a DataStore, use SchemaService.GetSchema API instead. The provided schema will be validated against certain rules on schema. Learn more from [this doc](https://cloud.google.com/generative-ai-app-builder/docs/provide-schema).
    &quot;fieldConfigs&quot;: [ # Output only. Configurations for fields of the schema.
      { # Configurations for fields of a schema. For example, configuring a field is indexable, or searchable.
        &quot;advancedSiteSearchDataSources&quot;: [ # If this field is set, only the corresponding source will be indexed for this field. Otherwise, the values from different sources are merged. Assuming a page with `` in meta tag, and `` in page map: if this enum is set to METATAGS, we will only index ``; if this enum is not set, we will merge them and index ``.
          &quot;A String&quot;,
        ],
        &quot;completableOption&quot;: &quot;A String&quot;, # If completable_option is COMPLETABLE_ENABLED, field values are directly used and returned as suggestions for Autocomplete in CompletionService.CompleteQuery. If completable_option is unset, the server behavior defaults to COMPLETABLE_DISABLED for fields that support setting completable options, which are just `string` fields. For those fields that do not support setting completable options, the server will skip completable option setting, and setting completable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;dynamicFacetableOption&quot;: &quot;A String&quot;, # If dynamic_facetable_option is DYNAMIC_FACETABLE_ENABLED, field values are available for dynamic facet. Could only be DYNAMIC_FACETABLE_DISABLED if FieldConfig.indexable_option is INDEXABLE_DISABLED. Otherwise, an `INVALID_ARGUMENT` error will be returned. If dynamic_facetable_option is unset, the server behavior defaults to DYNAMIC_FACETABLE_DISABLED for fields that support setting dynamic facetable options. For those fields that do not support setting dynamic facetable options, such as `object` and `boolean`, the server will skip dynamic facetable option setting, and setting dynamic_facetable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;fieldPath&quot;: &quot;A String&quot;, # Required. Field path of the schema field. For example: `title`, `description`, `release_info.release_year`.
        &quot;fieldType&quot;: &quot;A String&quot;, # Output only. Raw type of the field.
        &quot;indexableOption&quot;: &quot;A String&quot;, # If indexable_option is INDEXABLE_ENABLED, field values are indexed so that it can be filtered or faceted in SearchService.Search. If indexable_option is unset, the server behavior defaults to INDEXABLE_DISABLED for fields that support setting indexable options. For those fields that do not support setting indexable options, such as `object` and `boolean` and key properties, the server will skip indexable_option setting, and setting indexable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;keyPropertyType&quot;: &quot;A String&quot;, # Output only. Type of the key property that this field is mapped to. Empty string if this is not annotated as mapped to a key property. Example types are `title`, `description`. Full list is defined by `keyPropertyMapping` in the schema field annotation. If the schema field has a `KeyPropertyMapping` annotation, `indexable_option` and `searchable_option` of this field cannot be modified.
        &quot;metatagName&quot;: &quot;A String&quot;, # Optional. The metatag name found in the HTML page. If user defines this field, the value of this metatag name will be used to extract metatag. If the user does not define this field, the FieldConfig.field_path will be used to extract metatag.
        &quot;recsFilterableOption&quot;: &quot;A String&quot;, # If recs_filterable_option is FILTERABLE_ENABLED, field values are filterable by filter expression in RecommendationService.Recommend. If FILTERABLE_ENABLED but the field type is numerical, field values are not filterable by text queries in RecommendationService.Recommend. Only textual fields are supported. If recs_filterable_option is unset, the default setting is FILTERABLE_DISABLED for fields that support setting filterable options. When a field set to [FILTERABLE_DISABLED] is filtered, a warning is generated and an empty result is returned.
        &quot;retrievableOption&quot;: &quot;A String&quot;, # If retrievable_option is RETRIEVABLE_ENABLED, field values are included in the search results. If retrievable_option is unset, the server behavior defaults to RETRIEVABLE_DISABLED for fields that support setting retrievable options. For those fields that do not support setting retrievable options, such as `object` and `boolean`, the server will skip retrievable option setting, and setting retrievable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;schemaOrgPaths&quot;: [ # Field paths for indexing custom attribute from schema.org data. More details of schema.org and its defined types can be found at [schema.org](https://schema.org). It is only used on advanced site search schema. Currently only support full path from root. The full path to a field is constructed by concatenating field names, starting from `_root`, with a period `.` as the delimiter. Examples: * Publish date of the root: _root.datePublished * Publish date of the reviews: _root.review.datePublished
          &quot;A String&quot;,
        ],
        &quot;searchableOption&quot;: &quot;A String&quot;, # If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error.
      },
    ],
    &quot;jsonSchema&quot;: &quot;A String&quot;, # The JSON representation of the schema.
    &quot;name&quot;: &quot;A String&quot;, # Immutable. The full resource name of the schema, in the format of `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/schemas/{schema}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
    &quot;structSchema&quot;: { # The structured representation of the schema.
      &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
    },
  },
  &quot;workspaceConfig&quot;: { # Config to store data store type configuration for workspace data # Config to store data store type configuration for workspace data. This must be set when DataStore.content_config is set as DataStore.ContentConfig.GOOGLE_WORKSPACE.
    &quot;dasherCustomerId&quot;: &quot;A String&quot;, # Obfuscated Dasher customer ID.
    &quot;superAdminEmailAddress&quot;: &quot;A String&quot;, # Optional. The super admin email address for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
    &quot;superAdminServiceAccount&quot;: &quot;A String&quot;, # Optional. The super admin service account for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
    &quot;type&quot;: &quot;A String&quot;, # The Google Workspace data source.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="getDocumentProcessingConfig">getDocumentProcessingConfig(name, x__xgafv=None)</code>
  <pre>Gets a DocumentProcessingConfig.

Args:
  name: string, Required. Full DocumentProcessingConfig resource name. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}/documentProcessingConfig` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A singleton resource of DataStore. If it&#x27;s empty when DataStore is created and DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED, the default parser will default to digital parser.
  &quot;chunkingConfig&quot;: { # Configuration for chunking config. # Whether chunking mode is enabled.
    &quot;layoutBasedChunkingConfig&quot;: { # Configuration for the layout based chunking. # Configuration for the layout based chunking.
      &quot;chunkSize&quot;: 42, # The token size limit for each chunk. Supported values: 100-500 (inclusive). Default value: 500.
      &quot;includeAncestorHeadings&quot;: True or False, # Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss. Default value: False.
    },
  },
  &quot;defaultParsingConfig&quot;: { # Related configurations applied to a specific type of document parser. # Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.
    &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
    },
    &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
      &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
      &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
      &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
      &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
        &quot;A String&quot;,
      ],
    },
    &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
      &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
        &quot;A String&quot;,
      ],
      &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
    },
  },
  &quot;name&quot;: &quot;A String&quot;, # The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`.
  &quot;parsingConfigOverrides&quot;: { # Map from file type to override the default parsing configuration based on the file type. Supported keys: * `pdf`: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported. * `html`: Override parsing config for HTML files, only digital parsing and layout parsing are supported. * `docx`: Override parsing config for DOCX files, only digital parsing and layout parsing are supported. * `pptx`: Override parsing config for PPTX files, only digital parsing and layout parsing are supported. * `xlsm`: Override parsing config for XLSM files, only digital parsing and layout parsing are supported. * `xlsx`: Override parsing config for XLSX files, only digital parsing and layout parsing are supported.
    &quot;a_key&quot;: { # Related configurations applied to a specific type of document parser.
      &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
      },
      &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
        &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
        &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
        &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
        &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
          &quot;A String&quot;,
        ],
      },
      &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
        &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
          &quot;A String&quot;,
        ],
        &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
      },
    },
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="getSiteSearchEngine">getSiteSearchEngine(name, x__xgafv=None)</code>
  <pre>Gets the SiteSearchEngine.

Args:
  name: string, Required. Resource name of SiteSearchEngine, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/siteSearchEngine`. If the caller does not have permission to access the [SiteSearchEngine], regardless of whether or not it exists, a PERMISSION_DENIED error is returned. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # SiteSearchEngine captures DataStore level site search persisting configurations. It is a singleton value per data store.
  &quot;name&quot;: &quot;A String&quot;, # The fully qualified resource name of the site search engine. Format: `projects/*/locations/*/dataStores/*/siteSearchEngine`
}</pre>
</div>

<div class="method">
    <code class="details" id="list">list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
  <pre>Lists all the DataStores associated with the project.

Args:
  parent: string, Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection_id}`. If the caller does not have permission to list DataStores under this location, regardless of whether or not this data store exists, a PERMISSION_DENIED error is returned. (required)
  filter: string, Filter by solution type . For example: `filter = &#x27;solution_type:SOLUTION_TYPE_SEARCH&#x27;`
  pageSize: integer, Maximum number of DataStores to return. If unspecified, defaults to 10. The maximum allowed value is 50. Values above 50 will be coerced to 50. If this field is negative, an INVALID_ARGUMENT is returned.
  pageToken: string, A page token ListDataStoresResponse.next_page_token, received from a previous DataStoreService.ListDataStores call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to DataStoreService.ListDataStores must match the call that provided the page token. Otherwise, an INVALID_ARGUMENT error is returned.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for DataStoreService.ListDataStores method.
  &quot;dataStores&quot;: [ # All the customer&#x27;s DataStores.
    { # DataStore captures global settings and configs at the DataStore level.
      &quot;aclEnabled&quot;: True or False, # Immutable. Whether data in the DataStore has ACL information. If set to `true`, the source data must have ACL. ACL will be ingested when data is ingested by DocumentService.ImportDocuments methods. When ACL is enabled for the DataStore, Document can&#x27;t be accessed by calling DocumentService.GetDocument or DocumentService.ListDocuments. Currently ACL is only supported in `GENERIC` industry vertical with non-`PUBLIC_WEBSITE` content config.
      &quot;advancedSiteSearchConfig&quot;: { # Configuration data for advance site search. # Optional. Configuration for advanced site search.
        &quot;disableAutomaticRefresh&quot;: True or False, # If set true, automatic refresh is disabled for the DataStore.
        &quot;disableInitialIndex&quot;: True or False, # If set true, initial indexing is disabled for the DataStore.
      },
      &quot;billingEstimation&quot;: { # Estimation of data size per data store. # Output only. Data size estimation for billing.
        &quot;structuredDataSize&quot;: &quot;A String&quot;, # Data size for structured data in terms of bytes.
        &quot;structuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for structured data.
        &quot;unstructuredDataSize&quot;: &quot;A String&quot;, # Data size for unstructured data in terms of bytes.
        &quot;unstructuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for unstructured data.
        &quot;websiteDataSize&quot;: &quot;A String&quot;, # Data size for websites in terms of bytes.
        &quot;websiteDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for websites.
      },
      &quot;cmekConfig&quot;: { # Configurations used to enable CMEK data encryption with Cloud KMS keys. # Output only. CMEK-related information for the DataStore.
        &quot;isDefault&quot;: True or False, # Output only. The default CmekConfig for the Customer.
        &quot;kmsKey&quot;: &quot;A String&quot;, # Required. KMS key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
        &quot;kmsKeyVersion&quot;: &quot;A String&quot;, # Output only. KMS key version resource name which will be used to encrypt resources `/cryptoKeyVersions/{keyVersion}`.
        &quot;lastRotationTimestampMicros&quot;: &quot;A String&quot;, # Output only. The timestamp of the last key rotation.
        &quot;name&quot;: &quot;A String&quot;, # Required. The name of the CmekConfig of the form `projects/{project}/locations/{location}/cmekConfig` or `projects/{project}/locations/{location}/cmekConfigs/{cmek_config}`.
        &quot;notebooklmState&quot;: &quot;A String&quot;, # Output only. Whether the NotebookLM Corpus is ready to be used.
        &quot;singleRegionKeys&quot;: [ # Optional. Single-regional CMEKs that are required for some VAIS features.
          { # Metadata for single-regional CMEKs.
            &quot;kmsKey&quot;: &quot;A String&quot;, # Required. Single-regional kms key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
          },
        ],
        &quot;state&quot;: &quot;A String&quot;, # Output only. The states of the CmekConfig.
      },
      &quot;configurableBillingApproach&quot;: &quot;A String&quot;, # Optional. Configuration for configurable billing approach. See
      &quot;configurableBillingApproachUpdateTime&quot;: &quot;A String&quot;, # Output only. The timestamp when configurable_billing_approach was last updated.
      &quot;contentConfig&quot;: &quot;A String&quot;, # Immutable. The content config of the data store. If this field is unset, the server behavior defaults to ContentConfig.NO_CONTENT.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp the DataStore was created at.
      &quot;defaultSchemaId&quot;: &quot;A String&quot;, # Output only. The id of the default Schema associated to this data store.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The data store display name. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
      &quot;documentProcessingConfig&quot;: { # A singleton resource of DataStore. If it&#x27;s empty when DataStore is created and DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED, the default parser will default to digital parser. # Configuration for Document understanding and enrichment.
        &quot;chunkingConfig&quot;: { # Configuration for chunking config. # Whether chunking mode is enabled.
          &quot;layoutBasedChunkingConfig&quot;: { # Configuration for the layout based chunking. # Configuration for the layout based chunking.
            &quot;chunkSize&quot;: 42, # The token size limit for each chunk. Supported values: 100-500 (inclusive). Default value: 500.
            &quot;includeAncestorHeadings&quot;: True or False, # Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss. Default value: False.
          },
        },
        &quot;defaultParsingConfig&quot;: { # Related configurations applied to a specific type of document parser. # Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.
          &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
          },
          &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
            &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
            &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
            &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
            &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
              &quot;A String&quot;,
            ],
            &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
              &quot;A String&quot;,
            ],
            &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
              &quot;A String&quot;,
            ],
            &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
              &quot;A String&quot;,
            ],
          },
          &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
            &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
              &quot;A String&quot;,
            ],
            &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
          },
        },
        &quot;name&quot;: &quot;A String&quot;, # The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`.
        &quot;parsingConfigOverrides&quot;: { # Map from file type to override the default parsing configuration based on the file type. Supported keys: * `pdf`: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported. * `html`: Override parsing config for HTML files, only digital parsing and layout parsing are supported. * `docx`: Override parsing config for DOCX files, only digital parsing and layout parsing are supported. * `pptx`: Override parsing config for PPTX files, only digital parsing and layout parsing are supported. * `xlsm`: Override parsing config for XLSM files, only digital parsing and layout parsing are supported. * `xlsx`: Override parsing config for XLSX files, only digital parsing and layout parsing are supported.
          &quot;a_key&quot;: { # Related configurations applied to a specific type of document parser.
            &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
            },
            &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
              &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
              &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
              &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
              &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
                &quot;A String&quot;,
              ],
              &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
                &quot;A String&quot;,
              ],
              &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
                &quot;A String&quot;,
              ],
              &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
                &quot;A String&quot;,
              ],
            },
            &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
              &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
                &quot;A String&quot;,
              ],
              &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
            },
          },
        },
      },
      &quot;healthcareFhirConfig&quot;: { # Config to data store for `HEALTHCARE_FHIR` vertical. # Optional. Configuration for `HEALTHCARE_FHIR` vertical.
        &quot;enableConfigurableSchema&quot;: True or False, # Whether to enable configurable schema for `HEALTHCARE_FHIR` vertical. If set to `true`, the predefined healthcare fhir schema can be extended for more customized searching and filtering.
        &quot;enableStaticIndexingForBatchIngestion&quot;: True or False, # Whether to enable static indexing for `HEALTHCARE_FHIR` batch ingestion. If set to `true`, the batch ingestion will be processed in a static indexing mode which is slower but more capable of handling larger volume.
      },
      &quot;identityMappingStore&quot;: &quot;A String&quot;, # Immutable. The fully qualified resource name of the associated IdentityMappingStore. This field can only be set for acl_enabled DataStores with `THIRD_PARTY` or `GSUITE` IdP. Format: `projects/{project}/locations/{location}/identityMappingStores/{identity_mapping_store}`.
      &quot;idpConfig&quot;: { # Identity Provider Config. # Output only. Data store level identity provider config.
        &quot;externalIdpConfig&quot;: { # Third party IDP Config. # External Identity provider config.
          &quot;workforcePoolName&quot;: &quot;A String&quot;, # Workforce pool name. Example: &quot;locations/global/workforcePools/pool_id&quot;
        },
        &quot;idpType&quot;: &quot;A String&quot;, # Identity provider type configured.
      },
      &quot;industryVertical&quot;: &quot;A String&quot;, # Immutable. The industry vertical that the data store registers.
      &quot;isInfobotFaqDataStore&quot;: True or False, # Optional. If set, this DataStore is an Infobot FAQ DataStore.
      &quot;kmsKeyName&quot;: &quot;A String&quot;, # Input only. The KMS key to be used to protect this DataStore at creation time. Must be set for requests that need to comply with CMEK Org Policy protections. If this field is set and processed successfully, the DataStore will be protected by the KMS key, as indicated in the cmek_config field.
      &quot;languageInfo&quot;: { # Language info for DataStore. # Language info for DataStore.
        &quot;language&quot;: &quot;A String&quot;, # Output only. Language part of normalized_language_code. E.g.: `en-US` -&gt; `en`, `zh-Hans-HK` -&gt; `zh`, `en` -&gt; `en`.
        &quot;languageCode&quot;: &quot;A String&quot;, # The language code for the DataStore.
        &quot;normalizedLanguageCode&quot;: &quot;A String&quot;, # Output only. This is the normalized form of language_code. E.g.: language_code of `en-GB`, `en_GB`, `en-UK` or `en-gb` will have normalized_language_code of `en-GB`.
        &quot;region&quot;: &quot;A String&quot;, # Output only. Region part of normalized_language_code, if present. E.g.: `en-US` -&gt; `US`, `zh-Hans-HK` -&gt; `HK`, `en` -&gt; ``.
      },
      &quot;name&quot;: &quot;A String&quot;, # Immutable. Identifier. The full resource name of the data store. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
      &quot;naturalLanguageQueryUnderstandingConfig&quot;: { # Configuration for Natural Language Query Understanding. # Optional. Configuration for Natural Language Query Understanding.
        &quot;mode&quot;: &quot;A String&quot;, # Mode of Natural Language Query Understanding. If this field is unset, the behavior defaults to NaturalLanguageQueryUnderstandingConfig.Mode.DISABLED.
      },
      &quot;servingConfigDataStore&quot;: { # Stores information regarding the serving configurations at DataStore level. # Optional. Stores serving config at DataStore level.
        &quot;disabledForServing&quot;: True or False, # Optional. If set true, the DataStore will not be available for serving search requests.
      },
      &quot;solutionTypes&quot;: [ # The solutions that the data store enrolls. Available solutions for each industry_vertical: * `MEDIA`: `SOLUTION_TYPE_RECOMMENDATION` and `SOLUTION_TYPE_SEARCH`. * `SITE_SEARCH`: `SOLUTION_TYPE_SEARCH` is automatically enrolled. Other solutions cannot be enrolled.
        &quot;A String&quot;,
      ],
      &quot;startingSchema&quot;: { # Defines the structure and layout of a type of document data. # The start schema to use for this DataStore when provisioning it. If unset, a default vertical specialized schema will be used. This field is only used by CreateDataStore API, and will be ignored if used in other APIs. This field will be omitted from all API responses including CreateDataStore API. To retrieve a schema of a DataStore, use SchemaService.GetSchema API instead. The provided schema will be validated against certain rules on schema. Learn more from [this doc](https://cloud.google.com/generative-ai-app-builder/docs/provide-schema).
        &quot;fieldConfigs&quot;: [ # Output only. Configurations for fields of the schema.
          { # Configurations for fields of a schema. For example, configuring a field is indexable, or searchable.
            &quot;advancedSiteSearchDataSources&quot;: [ # If this field is set, only the corresponding source will be indexed for this field. Otherwise, the values from different sources are merged. Assuming a page with `` in meta tag, and `` in page map: if this enum is set to METATAGS, we will only index ``; if this enum is not set, we will merge them and index ``.
              &quot;A String&quot;,
            ],
            &quot;completableOption&quot;: &quot;A String&quot;, # If completable_option is COMPLETABLE_ENABLED, field values are directly used and returned as suggestions for Autocomplete in CompletionService.CompleteQuery. If completable_option is unset, the server behavior defaults to COMPLETABLE_DISABLED for fields that support setting completable options, which are just `string` fields. For those fields that do not support setting completable options, the server will skip completable option setting, and setting completable_option for those fields will throw `INVALID_ARGUMENT` error.
            &quot;dynamicFacetableOption&quot;: &quot;A String&quot;, # If dynamic_facetable_option is DYNAMIC_FACETABLE_ENABLED, field values are available for dynamic facet. Could only be DYNAMIC_FACETABLE_DISABLED if FieldConfig.indexable_option is INDEXABLE_DISABLED. Otherwise, an `INVALID_ARGUMENT` error will be returned. If dynamic_facetable_option is unset, the server behavior defaults to DYNAMIC_FACETABLE_DISABLED for fields that support setting dynamic facetable options. For those fields that do not support setting dynamic facetable options, such as `object` and `boolean`, the server will skip dynamic facetable option setting, and setting dynamic_facetable_option for those fields will throw `INVALID_ARGUMENT` error.
            &quot;fieldPath&quot;: &quot;A String&quot;, # Required. Field path of the schema field. For example: `title`, `description`, `release_info.release_year`.
            &quot;fieldType&quot;: &quot;A String&quot;, # Output only. Raw type of the field.
            &quot;indexableOption&quot;: &quot;A String&quot;, # If indexable_option is INDEXABLE_ENABLED, field values are indexed so that it can be filtered or faceted in SearchService.Search. If indexable_option is unset, the server behavior defaults to INDEXABLE_DISABLED for fields that support setting indexable options. For those fields that do not support setting indexable options, such as `object` and `boolean` and key properties, the server will skip indexable_option setting, and setting indexable_option for those fields will throw `INVALID_ARGUMENT` error.
            &quot;keyPropertyType&quot;: &quot;A String&quot;, # Output only. Type of the key property that this field is mapped to. Empty string if this is not annotated as mapped to a key property. Example types are `title`, `description`. Full list is defined by `keyPropertyMapping` in the schema field annotation. If the schema field has a `KeyPropertyMapping` annotation, `indexable_option` and `searchable_option` of this field cannot be modified.
            &quot;metatagName&quot;: &quot;A String&quot;, # Optional. The metatag name found in the HTML page. If user defines this field, the value of this metatag name will be used to extract metatag. If the user does not define this field, the FieldConfig.field_path will be used to extract metatag.
            &quot;recsFilterableOption&quot;: &quot;A String&quot;, # If recs_filterable_option is FILTERABLE_ENABLED, field values are filterable by filter expression in RecommendationService.Recommend. If FILTERABLE_ENABLED but the field type is numerical, field values are not filterable by text queries in RecommendationService.Recommend. Only textual fields are supported. If recs_filterable_option is unset, the default setting is FILTERABLE_DISABLED for fields that support setting filterable options. When a field set to [FILTERABLE_DISABLED] is filtered, a warning is generated and an empty result is returned.
            &quot;retrievableOption&quot;: &quot;A String&quot;, # If retrievable_option is RETRIEVABLE_ENABLED, field values are included in the search results. If retrievable_option is unset, the server behavior defaults to RETRIEVABLE_DISABLED for fields that support setting retrievable options. For those fields that do not support setting retrievable options, such as `object` and `boolean`, the server will skip retrievable option setting, and setting retrievable_option for those fields will throw `INVALID_ARGUMENT` error.
            &quot;schemaOrgPaths&quot;: [ # Field paths for indexing custom attribute from schema.org data. More details of schema.org and its defined types can be found at [schema.org](https://schema.org). It is only used on advanced site search schema. Currently only support full path from root. The full path to a field is constructed by concatenating field names, starting from `_root`, with a period `.` as the delimiter. Examples: * Publish date of the root: _root.datePublished * Publish date of the reviews: _root.review.datePublished
              &quot;A String&quot;,
            ],
            &quot;searchableOption&quot;: &quot;A String&quot;, # If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error.
          },
        ],
        &quot;jsonSchema&quot;: &quot;A String&quot;, # The JSON representation of the schema.
        &quot;name&quot;: &quot;A String&quot;, # Immutable. The full resource name of the schema, in the format of `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/schemas/{schema}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
        &quot;structSchema&quot;: { # The structured representation of the schema.
          &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
        },
      },
      &quot;workspaceConfig&quot;: { # Config to store data store type configuration for workspace data # Config to store data store type configuration for workspace data. This must be set when DataStore.content_config is set as DataStore.ContentConfig.GOOGLE_WORKSPACE.
        &quot;dasherCustomerId&quot;: &quot;A String&quot;, # Obfuscated Dasher customer ID.
        &quot;superAdminEmailAddress&quot;: &quot;A String&quot;, # Optional. The super admin email address for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
        &quot;superAdminServiceAccount&quot;: &quot;A String&quot;, # Optional. The super admin service account for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
        &quot;type&quot;: &quot;A String&quot;, # The Google Workspace data source.
      },
    },
  ],
  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token that can be sent as ListDataStoresRequest.page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.
}</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Updates a DataStore

Args:
  name: string, Immutable. Identifier. The full resource name of the data store. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters. (required)
  body: object, The request body.
    The object takes the form of:

{ # DataStore captures global settings and configs at the DataStore level.
  &quot;aclEnabled&quot;: True or False, # Immutable. Whether data in the DataStore has ACL information. If set to `true`, the source data must have ACL. ACL will be ingested when data is ingested by DocumentService.ImportDocuments methods. When ACL is enabled for the DataStore, Document can&#x27;t be accessed by calling DocumentService.GetDocument or DocumentService.ListDocuments. Currently ACL is only supported in `GENERIC` industry vertical with non-`PUBLIC_WEBSITE` content config.
  &quot;advancedSiteSearchConfig&quot;: { # Configuration data for advance site search. # Optional. Configuration for advanced site search.
    &quot;disableAutomaticRefresh&quot;: True or False, # If set true, automatic refresh is disabled for the DataStore.
    &quot;disableInitialIndex&quot;: True or False, # If set true, initial indexing is disabled for the DataStore.
  },
  &quot;billingEstimation&quot;: { # Estimation of data size per data store. # Output only. Data size estimation for billing.
    &quot;structuredDataSize&quot;: &quot;A String&quot;, # Data size for structured data in terms of bytes.
    &quot;structuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for structured data.
    &quot;unstructuredDataSize&quot;: &quot;A String&quot;, # Data size for unstructured data in terms of bytes.
    &quot;unstructuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for unstructured data.
    &quot;websiteDataSize&quot;: &quot;A String&quot;, # Data size for websites in terms of bytes.
    &quot;websiteDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for websites.
  },
  &quot;cmekConfig&quot;: { # Configurations used to enable CMEK data encryption with Cloud KMS keys. # Output only. CMEK-related information for the DataStore.
    &quot;isDefault&quot;: True or False, # Output only. The default CmekConfig for the Customer.
    &quot;kmsKey&quot;: &quot;A String&quot;, # Required. KMS key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
    &quot;kmsKeyVersion&quot;: &quot;A String&quot;, # Output only. KMS key version resource name which will be used to encrypt resources `/cryptoKeyVersions/{keyVersion}`.
    &quot;lastRotationTimestampMicros&quot;: &quot;A String&quot;, # Output only. The timestamp of the last key rotation.
    &quot;name&quot;: &quot;A String&quot;, # Required. The name of the CmekConfig of the form `projects/{project}/locations/{location}/cmekConfig` or `projects/{project}/locations/{location}/cmekConfigs/{cmek_config}`.
    &quot;notebooklmState&quot;: &quot;A String&quot;, # Output only. Whether the NotebookLM Corpus is ready to be used.
    &quot;singleRegionKeys&quot;: [ # Optional. Single-regional CMEKs that are required for some VAIS features.
      { # Metadata for single-regional CMEKs.
        &quot;kmsKey&quot;: &quot;A String&quot;, # Required. Single-regional kms key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
      },
    ],
    &quot;state&quot;: &quot;A String&quot;, # Output only. The states of the CmekConfig.
  },
  &quot;configurableBillingApproach&quot;: &quot;A String&quot;, # Optional. Configuration for configurable billing approach. See
  &quot;configurableBillingApproachUpdateTime&quot;: &quot;A String&quot;, # Output only. The timestamp when configurable_billing_approach was last updated.
  &quot;contentConfig&quot;: &quot;A String&quot;, # Immutable. The content config of the data store. If this field is unset, the server behavior defaults to ContentConfig.NO_CONTENT.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp the DataStore was created at.
  &quot;defaultSchemaId&quot;: &quot;A String&quot;, # Output only. The id of the default Schema associated to this data store.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The data store display name. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
  &quot;documentProcessingConfig&quot;: { # A singleton resource of DataStore. If it&#x27;s empty when DataStore is created and DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED, the default parser will default to digital parser. # Configuration for Document understanding and enrichment.
    &quot;chunkingConfig&quot;: { # Configuration for chunking config. # Whether chunking mode is enabled.
      &quot;layoutBasedChunkingConfig&quot;: { # Configuration for the layout based chunking. # Configuration for the layout based chunking.
        &quot;chunkSize&quot;: 42, # The token size limit for each chunk. Supported values: 100-500 (inclusive). Default value: 500.
        &quot;includeAncestorHeadings&quot;: True or False, # Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss. Default value: False.
      },
    },
    &quot;defaultParsingConfig&quot;: { # Related configurations applied to a specific type of document parser. # Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.
      &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
      },
      &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
        &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
        &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
        &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
        &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
          &quot;A String&quot;,
        ],
      },
      &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
        &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
          &quot;A String&quot;,
        ],
        &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
      },
    },
    &quot;name&quot;: &quot;A String&quot;, # The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`.
    &quot;parsingConfigOverrides&quot;: { # Map from file type to override the default parsing configuration based on the file type. Supported keys: * `pdf`: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported. * `html`: Override parsing config for HTML files, only digital parsing and layout parsing are supported. * `docx`: Override parsing config for DOCX files, only digital parsing and layout parsing are supported. * `pptx`: Override parsing config for PPTX files, only digital parsing and layout parsing are supported. * `xlsm`: Override parsing config for XLSM files, only digital parsing and layout parsing are supported. * `xlsx`: Override parsing config for XLSX files, only digital parsing and layout parsing are supported.
      &quot;a_key&quot;: { # Related configurations applied to a specific type of document parser.
        &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
        },
        &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
          &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
          &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
          &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
          &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
            &quot;A String&quot;,
          ],
        },
        &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
          &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
            &quot;A String&quot;,
          ],
          &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
        },
      },
    },
  },
  &quot;healthcareFhirConfig&quot;: { # Config to data store for `HEALTHCARE_FHIR` vertical. # Optional. Configuration for `HEALTHCARE_FHIR` vertical.
    &quot;enableConfigurableSchema&quot;: True or False, # Whether to enable configurable schema for `HEALTHCARE_FHIR` vertical. If set to `true`, the predefined healthcare fhir schema can be extended for more customized searching and filtering.
    &quot;enableStaticIndexingForBatchIngestion&quot;: True or False, # Whether to enable static indexing for `HEALTHCARE_FHIR` batch ingestion. If set to `true`, the batch ingestion will be processed in a static indexing mode which is slower but more capable of handling larger volume.
  },
  &quot;identityMappingStore&quot;: &quot;A String&quot;, # Immutable. The fully qualified resource name of the associated IdentityMappingStore. This field can only be set for acl_enabled DataStores with `THIRD_PARTY` or `GSUITE` IdP. Format: `projects/{project}/locations/{location}/identityMappingStores/{identity_mapping_store}`.
  &quot;idpConfig&quot;: { # Identity Provider Config. # Output only. Data store level identity provider config.
    &quot;externalIdpConfig&quot;: { # Third party IDP Config. # External Identity provider config.
      &quot;workforcePoolName&quot;: &quot;A String&quot;, # Workforce pool name. Example: &quot;locations/global/workforcePools/pool_id&quot;
    },
    &quot;idpType&quot;: &quot;A String&quot;, # Identity provider type configured.
  },
  &quot;industryVertical&quot;: &quot;A String&quot;, # Immutable. The industry vertical that the data store registers.
  &quot;isInfobotFaqDataStore&quot;: True or False, # Optional. If set, this DataStore is an Infobot FAQ DataStore.
  &quot;kmsKeyName&quot;: &quot;A String&quot;, # Input only. The KMS key to be used to protect this DataStore at creation time. Must be set for requests that need to comply with CMEK Org Policy protections. If this field is set and processed successfully, the DataStore will be protected by the KMS key, as indicated in the cmek_config field.
  &quot;languageInfo&quot;: { # Language info for DataStore. # Language info for DataStore.
    &quot;language&quot;: &quot;A String&quot;, # Output only. Language part of normalized_language_code. E.g.: `en-US` -&gt; `en`, `zh-Hans-HK` -&gt; `zh`, `en` -&gt; `en`.
    &quot;languageCode&quot;: &quot;A String&quot;, # The language code for the DataStore.
    &quot;normalizedLanguageCode&quot;: &quot;A String&quot;, # Output only. This is the normalized form of language_code. E.g.: language_code of `en-GB`, `en_GB`, `en-UK` or `en-gb` will have normalized_language_code of `en-GB`.
    &quot;region&quot;: &quot;A String&quot;, # Output only. Region part of normalized_language_code, if present. E.g.: `en-US` -&gt; `US`, `zh-Hans-HK` -&gt; `HK`, `en` -&gt; ``.
  },
  &quot;name&quot;: &quot;A String&quot;, # Immutable. Identifier. The full resource name of the data store. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
  &quot;naturalLanguageQueryUnderstandingConfig&quot;: { # Configuration for Natural Language Query Understanding. # Optional. Configuration for Natural Language Query Understanding.
    &quot;mode&quot;: &quot;A String&quot;, # Mode of Natural Language Query Understanding. If this field is unset, the behavior defaults to NaturalLanguageQueryUnderstandingConfig.Mode.DISABLED.
  },
  &quot;servingConfigDataStore&quot;: { # Stores information regarding the serving configurations at DataStore level. # Optional. Stores serving config at DataStore level.
    &quot;disabledForServing&quot;: True or False, # Optional. If set true, the DataStore will not be available for serving search requests.
  },
  &quot;solutionTypes&quot;: [ # The solutions that the data store enrolls. Available solutions for each industry_vertical: * `MEDIA`: `SOLUTION_TYPE_RECOMMENDATION` and `SOLUTION_TYPE_SEARCH`. * `SITE_SEARCH`: `SOLUTION_TYPE_SEARCH` is automatically enrolled. Other solutions cannot be enrolled.
    &quot;A String&quot;,
  ],
  &quot;startingSchema&quot;: { # Defines the structure and layout of a type of document data. # The start schema to use for this DataStore when provisioning it. If unset, a default vertical specialized schema will be used. This field is only used by CreateDataStore API, and will be ignored if used in other APIs. This field will be omitted from all API responses including CreateDataStore API. To retrieve a schema of a DataStore, use SchemaService.GetSchema API instead. The provided schema will be validated against certain rules on schema. Learn more from [this doc](https://cloud.google.com/generative-ai-app-builder/docs/provide-schema).
    &quot;fieldConfigs&quot;: [ # Output only. Configurations for fields of the schema.
      { # Configurations for fields of a schema. For example, configuring a field is indexable, or searchable.
        &quot;advancedSiteSearchDataSources&quot;: [ # If this field is set, only the corresponding source will be indexed for this field. Otherwise, the values from different sources are merged. Assuming a page with `` in meta tag, and `` in page map: if this enum is set to METATAGS, we will only index ``; if this enum is not set, we will merge them and index ``.
          &quot;A String&quot;,
        ],
        &quot;completableOption&quot;: &quot;A String&quot;, # If completable_option is COMPLETABLE_ENABLED, field values are directly used and returned as suggestions for Autocomplete in CompletionService.CompleteQuery. If completable_option is unset, the server behavior defaults to COMPLETABLE_DISABLED for fields that support setting completable options, which are just `string` fields. For those fields that do not support setting completable options, the server will skip completable option setting, and setting completable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;dynamicFacetableOption&quot;: &quot;A String&quot;, # If dynamic_facetable_option is DYNAMIC_FACETABLE_ENABLED, field values are available for dynamic facet. Could only be DYNAMIC_FACETABLE_DISABLED if FieldConfig.indexable_option is INDEXABLE_DISABLED. Otherwise, an `INVALID_ARGUMENT` error will be returned. If dynamic_facetable_option is unset, the server behavior defaults to DYNAMIC_FACETABLE_DISABLED for fields that support setting dynamic facetable options. For those fields that do not support setting dynamic facetable options, such as `object` and `boolean`, the server will skip dynamic facetable option setting, and setting dynamic_facetable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;fieldPath&quot;: &quot;A String&quot;, # Required. Field path of the schema field. For example: `title`, `description`, `release_info.release_year`.
        &quot;fieldType&quot;: &quot;A String&quot;, # Output only. Raw type of the field.
        &quot;indexableOption&quot;: &quot;A String&quot;, # If indexable_option is INDEXABLE_ENABLED, field values are indexed so that it can be filtered or faceted in SearchService.Search. If indexable_option is unset, the server behavior defaults to INDEXABLE_DISABLED for fields that support setting indexable options. For those fields that do not support setting indexable options, such as `object` and `boolean` and key properties, the server will skip indexable_option setting, and setting indexable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;keyPropertyType&quot;: &quot;A String&quot;, # Output only. Type of the key property that this field is mapped to. Empty string if this is not annotated as mapped to a key property. Example types are `title`, `description`. Full list is defined by `keyPropertyMapping` in the schema field annotation. If the schema field has a `KeyPropertyMapping` annotation, `indexable_option` and `searchable_option` of this field cannot be modified.
        &quot;metatagName&quot;: &quot;A String&quot;, # Optional. The metatag name found in the HTML page. If user defines this field, the value of this metatag name will be used to extract metatag. If the user does not define this field, the FieldConfig.field_path will be used to extract metatag.
        &quot;recsFilterableOption&quot;: &quot;A String&quot;, # If recs_filterable_option is FILTERABLE_ENABLED, field values are filterable by filter expression in RecommendationService.Recommend. If FILTERABLE_ENABLED but the field type is numerical, field values are not filterable by text queries in RecommendationService.Recommend. Only textual fields are supported. If recs_filterable_option is unset, the default setting is FILTERABLE_DISABLED for fields that support setting filterable options. When a field set to [FILTERABLE_DISABLED] is filtered, a warning is generated and an empty result is returned.
        &quot;retrievableOption&quot;: &quot;A String&quot;, # If retrievable_option is RETRIEVABLE_ENABLED, field values are included in the search results. If retrievable_option is unset, the server behavior defaults to RETRIEVABLE_DISABLED for fields that support setting retrievable options. For those fields that do not support setting retrievable options, such as `object` and `boolean`, the server will skip retrievable option setting, and setting retrievable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;schemaOrgPaths&quot;: [ # Field paths for indexing custom attribute from schema.org data. More details of schema.org and its defined types can be found at [schema.org](https://schema.org). It is only used on advanced site search schema. Currently only support full path from root. The full path to a field is constructed by concatenating field names, starting from `_root`, with a period `.` as the delimiter. Examples: * Publish date of the root: _root.datePublished * Publish date of the reviews: _root.review.datePublished
          &quot;A String&quot;,
        ],
        &quot;searchableOption&quot;: &quot;A String&quot;, # If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error.
      },
    ],
    &quot;jsonSchema&quot;: &quot;A String&quot;, # The JSON representation of the schema.
    &quot;name&quot;: &quot;A String&quot;, # Immutable. The full resource name of the schema, in the format of `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/schemas/{schema}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
    &quot;structSchema&quot;: { # The structured representation of the schema.
      &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
    },
  },
  &quot;workspaceConfig&quot;: { # Config to store data store type configuration for workspace data # Config to store data store type configuration for workspace data. This must be set when DataStore.content_config is set as DataStore.ContentConfig.GOOGLE_WORKSPACE.
    &quot;dasherCustomerId&quot;: &quot;A String&quot;, # Obfuscated Dasher customer ID.
    &quot;superAdminEmailAddress&quot;: &quot;A String&quot;, # Optional. The super admin email address for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
    &quot;superAdminServiceAccount&quot;: &quot;A String&quot;, # Optional. The super admin service account for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
    &quot;type&quot;: &quot;A String&quot;, # The Google Workspace data source.
  },
}

  updateMask: string, Indicates which fields in the provided DataStore to update. If an unsupported or unknown field is provided, an INVALID_ARGUMENT error is returned.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # DataStore captures global settings and configs at the DataStore level.
  &quot;aclEnabled&quot;: True or False, # Immutable. Whether data in the DataStore has ACL information. If set to `true`, the source data must have ACL. ACL will be ingested when data is ingested by DocumentService.ImportDocuments methods. When ACL is enabled for the DataStore, Document can&#x27;t be accessed by calling DocumentService.GetDocument or DocumentService.ListDocuments. Currently ACL is only supported in `GENERIC` industry vertical with non-`PUBLIC_WEBSITE` content config.
  &quot;advancedSiteSearchConfig&quot;: { # Configuration data for advance site search. # Optional. Configuration for advanced site search.
    &quot;disableAutomaticRefresh&quot;: True or False, # If set true, automatic refresh is disabled for the DataStore.
    &quot;disableInitialIndex&quot;: True or False, # If set true, initial indexing is disabled for the DataStore.
  },
  &quot;billingEstimation&quot;: { # Estimation of data size per data store. # Output only. Data size estimation for billing.
    &quot;structuredDataSize&quot;: &quot;A String&quot;, # Data size for structured data in terms of bytes.
    &quot;structuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for structured data.
    &quot;unstructuredDataSize&quot;: &quot;A String&quot;, # Data size for unstructured data in terms of bytes.
    &quot;unstructuredDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for unstructured data.
    &quot;websiteDataSize&quot;: &quot;A String&quot;, # Data size for websites in terms of bytes.
    &quot;websiteDataUpdateTime&quot;: &quot;A String&quot;, # Last updated timestamp for websites.
  },
  &quot;cmekConfig&quot;: { # Configurations used to enable CMEK data encryption with Cloud KMS keys. # Output only. CMEK-related information for the DataStore.
    &quot;isDefault&quot;: True or False, # Output only. The default CmekConfig for the Customer.
    &quot;kmsKey&quot;: &quot;A String&quot;, # Required. KMS key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
    &quot;kmsKeyVersion&quot;: &quot;A String&quot;, # Output only. KMS key version resource name which will be used to encrypt resources `/cryptoKeyVersions/{keyVersion}`.
    &quot;lastRotationTimestampMicros&quot;: &quot;A String&quot;, # Output only. The timestamp of the last key rotation.
    &quot;name&quot;: &quot;A String&quot;, # Required. The name of the CmekConfig of the form `projects/{project}/locations/{location}/cmekConfig` or `projects/{project}/locations/{location}/cmekConfigs/{cmek_config}`.
    &quot;notebooklmState&quot;: &quot;A String&quot;, # Output only. Whether the NotebookLM Corpus is ready to be used.
    &quot;singleRegionKeys&quot;: [ # Optional. Single-regional CMEKs that are required for some VAIS features.
      { # Metadata for single-regional CMEKs.
        &quot;kmsKey&quot;: &quot;A String&quot;, # Required. Single-regional kms key resource name which will be used to encrypt resources `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}`.
      },
    ],
    &quot;state&quot;: &quot;A String&quot;, # Output only. The states of the CmekConfig.
  },
  &quot;configurableBillingApproach&quot;: &quot;A String&quot;, # Optional. Configuration for configurable billing approach. See
  &quot;configurableBillingApproachUpdateTime&quot;: &quot;A String&quot;, # Output only. The timestamp when configurable_billing_approach was last updated.
  &quot;contentConfig&quot;: &quot;A String&quot;, # Immutable. The content config of the data store. If this field is unset, the server behavior defaults to ContentConfig.NO_CONTENT.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp the DataStore was created at.
  &quot;defaultSchemaId&quot;: &quot;A String&quot;, # Output only. The id of the default Schema associated to this data store.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The data store display name. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.
  &quot;documentProcessingConfig&quot;: { # A singleton resource of DataStore. If it&#x27;s empty when DataStore is created and DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED, the default parser will default to digital parser. # Configuration for Document understanding and enrichment.
    &quot;chunkingConfig&quot;: { # Configuration for chunking config. # Whether chunking mode is enabled.
      &quot;layoutBasedChunkingConfig&quot;: { # Configuration for the layout based chunking. # Configuration for the layout based chunking.
        &quot;chunkSize&quot;: 42, # The token size limit for each chunk. Supported values: 100-500 (inclusive). Default value: 500.
        &quot;includeAncestorHeadings&quot;: True or False, # Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss. Default value: False.
      },
    },
    &quot;defaultParsingConfig&quot;: { # Related configurations applied to a specific type of document parser. # Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.
      &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
      },
      &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
        &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
        &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
        &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
        &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
          &quot;A String&quot;,
        ],
      },
      &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
        &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
          &quot;A String&quot;,
        ],
        &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
      },
    },
    &quot;name&quot;: &quot;A String&quot;, # The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`.
    &quot;parsingConfigOverrides&quot;: { # Map from file type to override the default parsing configuration based on the file type. Supported keys: * `pdf`: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported. * `html`: Override parsing config for HTML files, only digital parsing and layout parsing are supported. * `docx`: Override parsing config for DOCX files, only digital parsing and layout parsing are supported. * `pptx`: Override parsing config for PPTX files, only digital parsing and layout parsing are supported. * `xlsm`: Override parsing config for XLSM files, only digital parsing and layout parsing are supported. * `xlsx`: Override parsing config for XLSX files, only digital parsing and layout parsing are supported.
      &quot;a_key&quot;: { # Related configurations applied to a specific type of document parser.
        &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
        },
        &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
          &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
          &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
          &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
          &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
            &quot;A String&quot;,
          ],
          &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
            &quot;A String&quot;,
          ],
        },
        &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
          &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
            &quot;A String&quot;,
          ],
          &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
        },
      },
    },
  },
  &quot;healthcareFhirConfig&quot;: { # Config to data store for `HEALTHCARE_FHIR` vertical. # Optional. Configuration for `HEALTHCARE_FHIR` vertical.
    &quot;enableConfigurableSchema&quot;: True or False, # Whether to enable configurable schema for `HEALTHCARE_FHIR` vertical. If set to `true`, the predefined healthcare fhir schema can be extended for more customized searching and filtering.
    &quot;enableStaticIndexingForBatchIngestion&quot;: True or False, # Whether to enable static indexing for `HEALTHCARE_FHIR` batch ingestion. If set to `true`, the batch ingestion will be processed in a static indexing mode which is slower but more capable of handling larger volume.
  },
  &quot;identityMappingStore&quot;: &quot;A String&quot;, # Immutable. The fully qualified resource name of the associated IdentityMappingStore. This field can only be set for acl_enabled DataStores with `THIRD_PARTY` or `GSUITE` IdP. Format: `projects/{project}/locations/{location}/identityMappingStores/{identity_mapping_store}`.
  &quot;idpConfig&quot;: { # Identity Provider Config. # Output only. Data store level identity provider config.
    &quot;externalIdpConfig&quot;: { # Third party IDP Config. # External Identity provider config.
      &quot;workforcePoolName&quot;: &quot;A String&quot;, # Workforce pool name. Example: &quot;locations/global/workforcePools/pool_id&quot;
    },
    &quot;idpType&quot;: &quot;A String&quot;, # Identity provider type configured.
  },
  &quot;industryVertical&quot;: &quot;A String&quot;, # Immutable. The industry vertical that the data store registers.
  &quot;isInfobotFaqDataStore&quot;: True or False, # Optional. If set, this DataStore is an Infobot FAQ DataStore.
  &quot;kmsKeyName&quot;: &quot;A String&quot;, # Input only. The KMS key to be used to protect this DataStore at creation time. Must be set for requests that need to comply with CMEK Org Policy protections. If this field is set and processed successfully, the DataStore will be protected by the KMS key, as indicated in the cmek_config field.
  &quot;languageInfo&quot;: { # Language info for DataStore. # Language info for DataStore.
    &quot;language&quot;: &quot;A String&quot;, # Output only. Language part of normalized_language_code. E.g.: `en-US` -&gt; `en`, `zh-Hans-HK` -&gt; `zh`, `en` -&gt; `en`.
    &quot;languageCode&quot;: &quot;A String&quot;, # The language code for the DataStore.
    &quot;normalizedLanguageCode&quot;: &quot;A String&quot;, # Output only. This is the normalized form of language_code. E.g.: language_code of `en-GB`, `en_GB`, `en-UK` or `en-gb` will have normalized_language_code of `en-GB`.
    &quot;region&quot;: &quot;A String&quot;, # Output only. Region part of normalized_language_code, if present. E.g.: `en-US` -&gt; `US`, `zh-Hans-HK` -&gt; `HK`, `en` -&gt; ``.
  },
  &quot;name&quot;: &quot;A String&quot;, # Immutable. Identifier. The full resource name of the data store. Format: `projects/{project}/locations/{location}/collections/{collection_id}/dataStores/{data_store_id}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
  &quot;naturalLanguageQueryUnderstandingConfig&quot;: { # Configuration for Natural Language Query Understanding. # Optional. Configuration for Natural Language Query Understanding.
    &quot;mode&quot;: &quot;A String&quot;, # Mode of Natural Language Query Understanding. If this field is unset, the behavior defaults to NaturalLanguageQueryUnderstandingConfig.Mode.DISABLED.
  },
  &quot;servingConfigDataStore&quot;: { # Stores information regarding the serving configurations at DataStore level. # Optional. Stores serving config at DataStore level.
    &quot;disabledForServing&quot;: True or False, # Optional. If set true, the DataStore will not be available for serving search requests.
  },
  &quot;solutionTypes&quot;: [ # The solutions that the data store enrolls. Available solutions for each industry_vertical: * `MEDIA`: `SOLUTION_TYPE_RECOMMENDATION` and `SOLUTION_TYPE_SEARCH`. * `SITE_SEARCH`: `SOLUTION_TYPE_SEARCH` is automatically enrolled. Other solutions cannot be enrolled.
    &quot;A String&quot;,
  ],
  &quot;startingSchema&quot;: { # Defines the structure and layout of a type of document data. # The start schema to use for this DataStore when provisioning it. If unset, a default vertical specialized schema will be used. This field is only used by CreateDataStore API, and will be ignored if used in other APIs. This field will be omitted from all API responses including CreateDataStore API. To retrieve a schema of a DataStore, use SchemaService.GetSchema API instead. The provided schema will be validated against certain rules on schema. Learn more from [this doc](https://cloud.google.com/generative-ai-app-builder/docs/provide-schema).
    &quot;fieldConfigs&quot;: [ # Output only. Configurations for fields of the schema.
      { # Configurations for fields of a schema. For example, configuring a field is indexable, or searchable.
        &quot;advancedSiteSearchDataSources&quot;: [ # If this field is set, only the corresponding source will be indexed for this field. Otherwise, the values from different sources are merged. Assuming a page with `` in meta tag, and `` in page map: if this enum is set to METATAGS, we will only index ``; if this enum is not set, we will merge them and index ``.
          &quot;A String&quot;,
        ],
        &quot;completableOption&quot;: &quot;A String&quot;, # If completable_option is COMPLETABLE_ENABLED, field values are directly used and returned as suggestions for Autocomplete in CompletionService.CompleteQuery. If completable_option is unset, the server behavior defaults to COMPLETABLE_DISABLED for fields that support setting completable options, which are just `string` fields. For those fields that do not support setting completable options, the server will skip completable option setting, and setting completable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;dynamicFacetableOption&quot;: &quot;A String&quot;, # If dynamic_facetable_option is DYNAMIC_FACETABLE_ENABLED, field values are available for dynamic facet. Could only be DYNAMIC_FACETABLE_DISABLED if FieldConfig.indexable_option is INDEXABLE_DISABLED. Otherwise, an `INVALID_ARGUMENT` error will be returned. If dynamic_facetable_option is unset, the server behavior defaults to DYNAMIC_FACETABLE_DISABLED for fields that support setting dynamic facetable options. For those fields that do not support setting dynamic facetable options, such as `object` and `boolean`, the server will skip dynamic facetable option setting, and setting dynamic_facetable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;fieldPath&quot;: &quot;A String&quot;, # Required. Field path of the schema field. For example: `title`, `description`, `release_info.release_year`.
        &quot;fieldType&quot;: &quot;A String&quot;, # Output only. Raw type of the field.
        &quot;indexableOption&quot;: &quot;A String&quot;, # If indexable_option is INDEXABLE_ENABLED, field values are indexed so that it can be filtered or faceted in SearchService.Search. If indexable_option is unset, the server behavior defaults to INDEXABLE_DISABLED for fields that support setting indexable options. For those fields that do not support setting indexable options, such as `object` and `boolean` and key properties, the server will skip indexable_option setting, and setting indexable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;keyPropertyType&quot;: &quot;A String&quot;, # Output only. Type of the key property that this field is mapped to. Empty string if this is not annotated as mapped to a key property. Example types are `title`, `description`. Full list is defined by `keyPropertyMapping` in the schema field annotation. If the schema field has a `KeyPropertyMapping` annotation, `indexable_option` and `searchable_option` of this field cannot be modified.
        &quot;metatagName&quot;: &quot;A String&quot;, # Optional. The metatag name found in the HTML page. If user defines this field, the value of this metatag name will be used to extract metatag. If the user does not define this field, the FieldConfig.field_path will be used to extract metatag.
        &quot;recsFilterableOption&quot;: &quot;A String&quot;, # If recs_filterable_option is FILTERABLE_ENABLED, field values are filterable by filter expression in RecommendationService.Recommend. If FILTERABLE_ENABLED but the field type is numerical, field values are not filterable by text queries in RecommendationService.Recommend. Only textual fields are supported. If recs_filterable_option is unset, the default setting is FILTERABLE_DISABLED for fields that support setting filterable options. When a field set to [FILTERABLE_DISABLED] is filtered, a warning is generated and an empty result is returned.
        &quot;retrievableOption&quot;: &quot;A String&quot;, # If retrievable_option is RETRIEVABLE_ENABLED, field values are included in the search results. If retrievable_option is unset, the server behavior defaults to RETRIEVABLE_DISABLED for fields that support setting retrievable options. For those fields that do not support setting retrievable options, such as `object` and `boolean`, the server will skip retrievable option setting, and setting retrievable_option for those fields will throw `INVALID_ARGUMENT` error.
        &quot;schemaOrgPaths&quot;: [ # Field paths for indexing custom attribute from schema.org data. More details of schema.org and its defined types can be found at [schema.org](https://schema.org). It is only used on advanced site search schema. Currently only support full path from root. The full path to a field is constructed by concatenating field names, starting from `_root`, with a period `.` as the delimiter. Examples: * Publish date of the root: _root.datePublished * Publish date of the reviews: _root.review.datePublished
          &quot;A String&quot;,
        ],
        &quot;searchableOption&quot;: &quot;A String&quot;, # If searchable_option is SEARCHABLE_ENABLED, field values are searchable by text queries in SearchService.Search. If SEARCHABLE_ENABLED but field type is numerical, field values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical fields. If searchable_option is unset, the server behavior defaults to SEARCHABLE_DISABLED for fields that support setting searchable options. Only `string` fields that have no key property mapping support setting searchable_option. For those fields that do not support setting searchable options, the server will skip searchable option setting, and setting searchable_option for those fields will throw `INVALID_ARGUMENT` error.
      },
    ],
    &quot;jsonSchema&quot;: &quot;A String&quot;, # The JSON representation of the schema.
    &quot;name&quot;: &quot;A String&quot;, # Immutable. The full resource name of the schema, in the format of `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/schemas/{schema}`. This field must be a UTF-8 encoded string with a length limit of 1024 characters.
    &quot;structSchema&quot;: { # The structured representation of the schema.
      &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
    },
  },
  &quot;workspaceConfig&quot;: { # Config to store data store type configuration for workspace data # Config to store data store type configuration for workspace data. This must be set when DataStore.content_config is set as DataStore.ContentConfig.GOOGLE_WORKSPACE.
    &quot;dasherCustomerId&quot;: &quot;A String&quot;, # Obfuscated Dasher customer ID.
    &quot;superAdminEmailAddress&quot;: &quot;A String&quot;, # Optional. The super admin email address for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
    &quot;superAdminServiceAccount&quot;: &quot;A String&quot;, # Optional. The super admin service account for the workspace that will be used for access token generation. For now we only use it for Native Google Drive connector data ingestion.
    &quot;type&quot;: &quot;A String&quot;, # The Google Workspace data source.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="trainCustomModel">trainCustomModel(dataStore, body=None, x__xgafv=None)</code>
  <pre>Trains a custom model.

Args:
  dataStore: string, Required. The resource name of the Data Store, such as `projects/*/locations/global/collections/default_collection/dataStores/default_data_store`. This field is used to identify the data store where to train the models. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for SearchTuningService.TrainCustomModel method.
  &quot;errorConfig&quot;: { # Configuration of destination for Import related errors. # The desired location of errors incurred during the data ingestion and training.
    &quot;gcsPrefix&quot;: &quot;A String&quot;, # Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors are written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.
  },
  &quot;gcsTrainingInput&quot;: { # Cloud Storage training data input. # Cloud Storage training input.
    &quot;corpusDataPath&quot;: &quot;A String&quot;, # The Cloud Storage corpus data which could be associated in train data. The data path format is `gs:///`. A newline delimited jsonl/ndjson file. For search-tuning model, each line should have the _id, title and text. Example: `{&quot;_id&quot;: &quot;doc1&quot;, title: &quot;relevant doc&quot;, &quot;text&quot;: &quot;relevant text&quot;}`
    &quot;queryDataPath&quot;: &quot;A String&quot;, # The gcs query data which could be associated in train data. The data path format is `gs:///`. A newline delimited jsonl/ndjson file. For search-tuning model, each line should have the _id and text. Example: {&quot;_id&quot;: &quot;query1&quot;, &quot;text&quot;: &quot;example query&quot;}
    &quot;testDataPath&quot;: &quot;A String&quot;, # Cloud Storage test data. Same format as train_data_path. If not provided, a random 80/20 train/test split will be performed on train_data_path.
    &quot;trainDataPath&quot;: &quot;A String&quot;, # Cloud Storage training data path whose format should be `gs:///`. The file should be in tsv format. Each line should have the doc_id and query_id and score (number). For search-tuning model, it should have the query-id corpus-id score as tsv file header. The score should be a number in `[0, inf+)`. The larger the number is, the more relevant the pair is. Example: * `query-id\tcorpus-id\tscore` * `query1\tdoc1\t1`
  },
  &quot;modelId&quot;: &quot;A String&quot;, # If not provided, a UUID will be generated.
  &quot;modelType&quot;: &quot;A String&quot;, # Model to be trained. Supported values are: * **search-tuning**: Fine tuning the search system based on data provided.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="updateDocumentProcessingConfig">updateDocumentProcessingConfig(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Updates the DocumentProcessingConfig. DocumentProcessingConfig is a singleon resource of DataStore. It&#x27;s empty when DataStore is created. The first call to this method will set up DocumentProcessingConfig.

Args:
  name: string, The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`. (required)
  body: object, The request body.
    The object takes the form of:

{ # A singleton resource of DataStore. If it&#x27;s empty when DataStore is created and DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED, the default parser will default to digital parser.
  &quot;chunkingConfig&quot;: { # Configuration for chunking config. # Whether chunking mode is enabled.
    &quot;layoutBasedChunkingConfig&quot;: { # Configuration for the layout based chunking. # Configuration for the layout based chunking.
      &quot;chunkSize&quot;: 42, # The token size limit for each chunk. Supported values: 100-500 (inclusive). Default value: 500.
      &quot;includeAncestorHeadings&quot;: True or False, # Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss. Default value: False.
    },
  },
  &quot;defaultParsingConfig&quot;: { # Related configurations applied to a specific type of document parser. # Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.
    &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
    },
    &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
      &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
      &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
      &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
      &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
        &quot;A String&quot;,
      ],
    },
    &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
      &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
        &quot;A String&quot;,
      ],
      &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
    },
  },
  &quot;name&quot;: &quot;A String&quot;, # The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`.
  &quot;parsingConfigOverrides&quot;: { # Map from file type to override the default parsing configuration based on the file type. Supported keys: * `pdf`: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported. * `html`: Override parsing config for HTML files, only digital parsing and layout parsing are supported. * `docx`: Override parsing config for DOCX files, only digital parsing and layout parsing are supported. * `pptx`: Override parsing config for PPTX files, only digital parsing and layout parsing are supported. * `xlsm`: Override parsing config for XLSM files, only digital parsing and layout parsing are supported. * `xlsx`: Override parsing config for XLSX files, only digital parsing and layout parsing are supported.
    &quot;a_key&quot;: { # Related configurations applied to a specific type of document parser.
      &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
      },
      &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
        &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
        &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
        &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
        &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
          &quot;A String&quot;,
        ],
      },
      &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
        &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
          &quot;A String&quot;,
        ],
        &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
      },
    },
  },
}

  updateMask: string, Indicates which fields in the provided DocumentProcessingConfig to update. The following are the only supported fields: * DocumentProcessingConfig.ocr_config If not set, all supported fields are updated.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A singleton resource of DataStore. If it&#x27;s empty when DataStore is created and DataStore is set to DataStore.ContentConfig.CONTENT_REQUIRED, the default parser will default to digital parser.
  &quot;chunkingConfig&quot;: { # Configuration for chunking config. # Whether chunking mode is enabled.
    &quot;layoutBasedChunkingConfig&quot;: { # Configuration for the layout based chunking. # Configuration for the layout based chunking.
      &quot;chunkSize&quot;: 42, # The token size limit for each chunk. Supported values: 100-500 (inclusive). Default value: 500.
      &quot;includeAncestorHeadings&quot;: True or False, # Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss. Default value: False.
    },
  },
  &quot;defaultParsingConfig&quot;: { # Related configurations applied to a specific type of document parser. # Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.
    &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
    },
    &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
      &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
      &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
      &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
      &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
        &quot;A String&quot;,
      ],
      &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
        &quot;A String&quot;,
      ],
    },
    &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
      &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
        &quot;A String&quot;,
      ],
      &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
    },
  },
  &quot;name&quot;: &quot;A String&quot;, # The full resource name of the Document Processing Config. Format: `projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig`.
  &quot;parsingConfigOverrides&quot;: { # Map from file type to override the default parsing configuration based on the file type. Supported keys: * `pdf`: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported. * `html`: Override parsing config for HTML files, only digital parsing and layout parsing are supported. * `docx`: Override parsing config for DOCX files, only digital parsing and layout parsing are supported. * `pptx`: Override parsing config for PPTX files, only digital parsing and layout parsing are supported. * `xlsm`: Override parsing config for XLSM files, only digital parsing and layout parsing are supported. * `xlsx`: Override parsing config for XLSX files, only digital parsing and layout parsing are supported.
    &quot;a_key&quot;: { # Related configurations applied to a specific type of document parser.
      &quot;digitalParsingConfig&quot;: { # The digital parsing configurations for documents. # Configurations applied to digital parser.
      },
      &quot;layoutParsingConfig&quot;: { # The layout parsing configurations for documents. # Configurations applied to layout parser.
        &quot;enableGetProcessedDocument&quot;: True or False, # Optional. If true, the processed document will be made available for the GetProcessedDocument API.
        &quot;enableImageAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the image during parsing.
        &quot;enableTableAnnotation&quot;: True or False, # Optional. If true, the LLM based annotation is added to the table during parsing.
        &quot;excludeHtmlClasses&quot;: [ # Optional. List of HTML classes to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlElements&quot;: [ # Optional. List of HTML elements to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;excludeHtmlIds&quot;: [ # Optional. List of HTML ids to exclude from the parsed content.
          &quot;A String&quot;,
        ],
        &quot;structuredContentTypes&quot;: [ # Optional. Contains the required structure types to extract from the document. Supported values: * `shareholder-structure`
          &quot;A String&quot;,
        ],
      },
      &quot;ocrParsingConfig&quot;: { # The OCR parsing configurations for documents. # Configurations applied to OCR parser. Currently it only applies to PDFs.
        &quot;enhancedDocumentElements&quot;: [ # [DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to `layout_parsing_config`.
          &quot;A String&quot;,
        ],
        &quot;useNativeText&quot;: True or False, # If true, will use native text instead of OCR text on pages containing native text.
      },
    },
  },
}</pre>
</div>

</body></html>